package com.common.www.bean.entity.project;


import org.springframework.boot.base.jpa.domain.annotations.QueryCacheable;
import org.springframework.boot.base.jpa.domain.entity.NumberIdentityEntity;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModel;
import lombok.*;
import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import org.hibernate.validator.constraints.Length;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

/**
 * 对项目版本表中各个内容的解释(备注/差异)
 * 针对每个Project只存在一条数据
 * @param
 * @author andyliu
 * @date 5/28/2018 4:23 PM
 * @return
 */
@DynamicUpdate(true)
@DynamicInsert(true)
@Entity
@Getter
@Setter
@QueryCacheable
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
@Table()
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "项目版本备注/差异")
public class ProjectVersionNotes extends NumberIdentityEntity {
    /**
     * 备注/差异对应项目的项目
     */
    @JsonIgnoreProperties(value = {""})
    @ManyToOne()
    private Project project;
    /**
     * 选取的对比项目
     */
    @JsonIgnoreProperties(value = {""})
    @ManyToOne()
    private ProjectVersion projectVersion;
    /**
     * 高压进线是否为双电源
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String gyjxWhetherPdfExplain;
    /**
     * 变压器形式
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String byqXsPdfExplain;
    /**
     * 配电房出线形式
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String pdfcxXsPdfExplain;
    /**
     * 非居计量形式
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String fjjlXsPdfExplain;
    /**
     * 变压器报装容量
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String byqbzrlPdfExplain;
    /**
     * 居变最大容量
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String jbzdrlPdfExplain;
    /**
     * 非居变最大容量
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String fjbzdrlPdfExplain;
    ///////地方做法--充电桩
    /**
     * 实配比例
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String spblCdzExplain;
    /**
     * 建设深度
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String jssdCdzExplain;
    /**
     * 接线位置
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String jxwzCdzExplain;
    ///////地方做法--住宅
    /**
     * 执行的电力文件
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String dlwjZzExplain;
    /**
     * 电缆材质
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String dlczZzExplain;
    /**
     * 电缆连接方式
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String dlljfsZzExplain;
    ///////地方做法--商业
    /**
     * 商业变压器是否独立
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String sybyqWhetherSyExplain;
    /**
     * 计量形式
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String jlXsSyExplain;
    ///////地方做法--其他
    /**
     * 其他电气重点内容
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String zynrQtExplain;


    //////重点指标
    /**
     * 地上：住宅干线电缆+表箱成本指标（元/㎡）
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String bxCbZbExplain;
    /**
     * 地下：住宅干线电缆+变压器成本指标（元/㎡）
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String byqCbZbExplain;
    /**
     * 项目变压器整体利用率
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String byqlylExplain;
    //1：居变（需要20台）-T代替-例如：T1、T2、T3……；非居（6台）-ZT代替；商业（4台）-ST代替
    /**
     * 居变 TL1（一期）
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain1;
    /**
     * 居变 TL2（一期）
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain2;
    /**
     * 居变 ...（一期）...
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain3;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain4;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain5;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain6;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain7;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain8;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain9;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain10;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain11;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain12;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain13;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain14;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain15;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain16;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain17;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain18;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain19;
    /**
     * 居变
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String tExplain20;
    /**
     * 非居
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String ztExplain1;
    /**
     * 非居
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String ztExplain2;
    /**
     * 非居
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String ztExplain3;
    /**
     * 非居
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String ztExplain4;
    /**
     * 非居
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String ztExplain5;
    /**
     * 非居
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String ztExplain6;

    /**
     * 商业
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String stExplain1;
    /**
     * 商业
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String stExplain2;
    /**
     * 商业
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String stExplain3;
    /**
     * 商业
     */
    @Column(length = 1024, columnDefinition = "TEXT")
    private String stExplain4;
    /**
     * 居住负荷指标（VA/㎡）
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String jzfhzbExplain;
    /**
     * 商业负荷指标（VA/㎡）
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String syfhzbExplain;
    /**
     * 非居负荷指标（VA/㎡）
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String fjfhzbExplain;

    ///////方案对比分析--外线
    /**
     * 电缆材质
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String dlczWxExplain;
    /**
     * 电缆截面（mm²）
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String dljmWxExplain;
    /**
     * 专线/公共搭接
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String zgjdWxExplain;
    /**
     * 其他（如：公共环网柜建设等）
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String qtWxExplain;
    ///////方案对比分析--内线
    /**
     * 高配室/开闭所柜体形式
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String gkXsNxExplain;
    /**
     * 高配室/开闭所柜体数量
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String gkslNxExplain;
    /**
     * 高配室/开闭所联络形式
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String gkllXsNxExplain;
    /**
     * 区内高压配电形式
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String qngypdXsNxExplain;
    /**
     * 区内高压电缆（mm²）
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String qngydlNxExplain;
    /**
     * 变压器装机容量（kVA）
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String byqzjrlNxExplain;
    /**
     * 变压器材质及节能等级
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String czdjNxExplain;
    /**
     * 低压柜柜体形式
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String dyggtXsNxExplain;
    /**
     * 低压柜柜体数量
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String dyggtslNxExplain;
    /**
     * 低压柜柜体是否联络
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String dyggtWhetherNxExplain;
    /**
     * 柜体铜排断面（mm²）
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String gttpdmNxExplain;
    /**
     * 低压干线电缆
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String dygxdlNxExplain;
    /**
     * 车充--电缆部分
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String ccDlNxExplain;
    /**
     * 车充--箱体部分
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String ccXtNxExplain;
    /**
     * 车充--桥架部分
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String ccQjNxExplain;
    /**
     * 发电机配电干线
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String fdjpdgxNxExplain;
    /**
     * 其他（如：直流屏、DTU、温控、湿控等）
     */
    @Column(length = 4096, columnDefinition = "TEXT")
    private String qtNxExplain;


}